package br.org.acessobrasil.portal.modelo;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

@Entity
@Table(name = "sgctb_logbusca")
public class LogBusca implements Serializable {
	private static final long serialVersionUID = 1L;
	@Id
	@GeneratedValue
	@Column(name="id_logbusca")
	private Long id;
	
	public Long getId() {
		return id;
	}
	
	public void setId(Long id) {
		this.id = id;
	}
	
	@Column(name="dataHora")
	private Date dataHora;
	
	public Date getDataHora() {
		return dataHora;
	}
	
	public void setDataHora(Date dataHora) {
		this.dataHora = dataHora;
	}
	
	@Column(name="txtBusca")
	private String txtBusca;
	
	public String getTxtBusca() {
		return txtBusca;
	}
	
	public String getTxtBuscaUrlEncoded() {
		try {
			return URLEncoder.encode(txtBusca,"iso-8859-1");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		return "";
	}
	
	public void setTxtBusca(String txtBusca) {
		this.txtBusca = txtBusca;
	}

	
	@Transient
	private int contador = 0;
	
	/**
	 * Incrementa o contador que &eacute; <i>Transient</i>;
	 * para ver o valor utilizar o getContador();
	 */
	public void maisMais() {
		contador++;
	}
	
	/**
	 * Numero de ocorrencias para o relatorio
	 * @return int contador
	 */
	public int getContador() {
		return contador;
	}
	
	@Transient
	private float percentual;
	
	public float getPercentual() {
		return percentual;
	}
	
	public void setPercentual(float percentual) {
		this.percentual = percentual;
	}
	
	@Transient
	private int fontSize=0;
	public int getFontSize() {
		return fontSize;
	}
	public void setFontSize(int fontSize) {
		this.fontSize = fontSize;
	}
}
